Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Паралельні та косокутні проекції

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра автоматизованих систем управління

Інформація про роботу

Рік:
2007
Тип роботи:
Лабораторна робота
Предмет:
Комп'ютерна графіка
Група:
КН

Частина тексту файла

Міністерство освіти та науки України Національний університет «Львівська політехніка» Кафедра автоматизованих систем управління  Лабораторна робота №3 з дисципліни «Комп’ютерна графіка» на тему: “Паралельні та косокутні проекції” Мета: Ознайомлення з елементарним математичним апаратом плоских геометричних проекцій. ТЕОРЕТИЧНІ ОСНОВИ Паралельні проекції. Будемо вважати, що при центральному проектуванні картинна площина перпендикулярна осі z і збігається з площиною z = d, а при паралельному збігається з площиною z = 0. Проекції розглядаються в системі координат спостерігача, що є лівосторонньою. Система координат, в якій вісь x спрямована вправо, y – вгору, а вісь z – усередину екрана, природно погоджується з екраном дисплея. Точка Р проектується на проекційну площину, розташовану на відстані d від початку координат. Для обчислення координат Xp і Yp проекції точки (x, y, z) напишемо співвідношення, отримані з подібності трикутників:  Перемножуючи обидві сторони кожного співвідношення на d, одержимо:  Відстань d є в даному випадку масштабним множником, застосованим до координат Xp і Yp. Фактором, що приводить до того, що на центральній проекції більш віддалені об’єкти виглядають дрібніше, ніж ближчі, є ділення на z. Відзначимо, що допустимі всі значення z, крім z = 0. Точки можуть розташовуватися як за центром проекції на від’ємній частині осі z, так і між центром проекції та проекційною площиною. При іншому представленні центрального проектування, застосованого в деяких роботах, проекційна площина сполучається з площиною 2 = 0, а центр проекції розташовується в точці 2 = – с. З подібності трикутників випливає:  Звідси одержуємо:  Ортографічне проектування на площину z = 0 очевидне. Напрямок проектування збігається з нормаллю до площини проекції, тобто в нашому випадку з віссю z. Таким чином точка Р має координати:  Косокутні проекції. Тепер розглянемо довільну точку (x, y, z) і визначимо її косокутну проекцію Xp і Yp на площину xy. Рівняння для x- і y-координат проектора як функцій z мають вид y = mz+b. Вирішуючи два рівняння відносно Xp і Yp, одержуємо:  ПОРЯДОК РОБОТИ Побудувати декартову тривимірну систему координат. Побудувати точку з довільними координатами. Побудувати паралельну проекцію точки. Для цього задати розміщення паралельної площини – відстань d. Вивести на екран спроектовану точку на площину та вказати, які вона матиме координати. Побудувати косокутну проекцію точки. Для цього додатково потрібно задати, під яким кутом β будемо дивитися на площину xy та під яким кутом α відносно початку координат буде розміщена спроектована точка. Вивести на екран спроектовану точку на площину та вказати, які вона матиме координати. Текст програми unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, Menus, StdCtrls, Buttons; type TForm1 = class(TForm) Bevel1: TBevel; PaintBox1: TPaintBox; MainMenu1: TMainMenu; N9,N10,N11,N12: TMenuItem; Izo30,Izo45,Izo60: TMenuItem; Dim30,Dim45,Dim60: TMenuItem; Label1,Label2,Label3,Label4: TLabel; Label5,Label6,Label7,Label8: TLabel; Label9,Label10,Label11: TLabel; ed,ex,ey,ez,ua,eb: TEdit; BitBtn1: TBitBtn; RadioGroup1: TRadioGroup; procedure Chusto; procedure MyLine(x1,y1,x2,y2: integer); procedure Podilku; procedure KoorOsi; procedure Tochka(x,y,z: double; c: Tcolor); procedure Plowuna(d: integer; c: Tcolor); procedure PaintBox1Paint(Sender: TObject); procedure FormCreate(Sender: TObject); procedure N9Click(Sender: TObject); procedure Izo30Click(Sender: TObject); procedure Izo45Click(Sender: TObject); procedure Izo60Click(Sender: TObject); procedure Dim30Click(Sender: TObject); procedure Dim45Click(Sender: TObject); procedure Dim60Click(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); private public end; type matrix= array[1..8,1..4] of double; c...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини